草庐IT

android - 在 Activity 上下文之外启动新的 Activity。

全部标签

ruby - 如何在当前类的上下文中运行 IRB.start

我刚看完PragProgContinuousTestingWithRuby,他们讨论了在当前类的上下文中调用IRB以手动检查代码。但是,他们引用说,如果您在类中调用IRB.start,self是预定义的,并且指的是调用start时我们所在的对象这对我来说不是真的。即使是非常简单的例子a="hello"require'irb'ARGV.clear#otherwiseallscriptparametersgetpassedtoIRBIRB.start当我尝试访问a变量时,我得到了明显的结果NameError:undefinedlocalvariableormethod`a'formain:

ruby-on-rails - (Ruby,Rails)模块和库中 SELF 的上下文......?

关于在模块或库中使用“SELF”的快速问题。基本上,“SELF”的范围/上下文是什么,因为它属于模块或库,如何正确使用它?有关我所说内容的示例,请查看随“restful_authentication”一起安装的“AuthenticatedSystem”模块。注意:我知道“self”在其他语言中等同于“this”,以及“self”如何在类/对象上运行,但是在模块/库的上下文中,“self”没有任何意义。那么在没有类的模块之类的东西中,self的上下文是什么? 最佳答案 在模块中:当您在实例方法中看到self时,它指的是包含该模块的类的

ruby - 在 Sinatra 中,你如何制作一个 "before"过滤器来匹配除某些路由之外的所有路由

我有一个RubySinatra应用程序,我有一些代码需要在除少数异常(exception)情况外的所有路由上执行。我该怎么做?如果我想在选定的路由(白名单样式)上执行代码,我会这样做:['/join',"/join/*","/payment/*"].eachdo|path|beforepathdo#somecodeendend我该如何反其道而行之(黑名单样式)?我想匹配除'/join'、'/join/*'和'/payment/*'之外的所有路由 最佳答案 负面前瞻:before/^(?!\/(join|payment))/do#..

ruby-on-rails - 如何在 Ruby 中创建一个新的 Date 实例

如何在给定日期的IRB中创建一个新的日期对象。以下无效。1.9.3p194:053>require'active_support'=>true1.9.3p194:054>Date.new=>#1.9.3p194:055>Date.parse('12/01/2012')NoMethodError:undefinedmethod`parse'forDate:Classfrom(irb):551.9.3p194:055>Date.new('12/01/2012')ArgumentError:wrongnumberofarguments(1for0) 最佳答案

ruby-on-rails - 输入 'rails console' 不启动?

我输入了这个:>railsconsole得到这个:Usage:railsnewAPP_PATH[options]Options:[--skip-gemfile]#Don'tcreateaGemfile-d,[--database=DATABASE]#Preconfigureforselecteddatabase(options:mysql/oracle/postgresql/sqlite3/frontbase/ibm_db)#Default:sqlite3.....我正在学习Rails教程,但卡住了。我安装了Rails3.0。 最佳答案

ruby-on-rails - rspec 共享示例与共享上下文

shared_examples和shared_context之间的真正区别是什么?我的观察:我可以使用两者测试相同的东西(即使用shared_examples或shared_context)但是如果我使用后面的测试,我的一些其他测试会失败。观察#1:我比较了shared_examples和shared_context根据https://www.relishapp.com/上的文档语法差异是:shared_context用于定义一个block,该block将通过隐式匹配元数据在示例组的上下文中进行评估示例:shared_context"sharedstuff",:a=>:bdo...en

ruby - 如何创建一个新的 Ruby gem?

要创建新的Rubygem,我应该使用Jeweler吗?或者我应该使用Bundler的内置gem骨架来创建基础gem?重要的区别是什么? 最佳答案 UseBundler从命令行:bundlegemyour_new_gem这将创建一个名为your_new_gem的目录,其中只有一组基本的文件和目录结构,现在被认为是最佳实践。它快速、简单,是一个很好的起点。 关于ruby-如何创建一个新的Rubygem?,我们在StackOverflow上找到一个类似的问题: ht

ruby-on-rails - 服务器启动时如何修复 "Your Ruby version is 2.3.0, but your Gemfile specified 2.2.5"

我在运行服务器时遇到此错误,我该如何解决? 最佳答案 为了兼容性,您最好安装Ruby2.2.5。本地计算机中的Ruby版本与Gemfile中声明的版本不同。如果您使用的是rvm:rvminstall2.2.5rvmuse2.2.5否则,如果您使用的是rbenv:rbenvinstall2.2.5rbenvlocal2.2.5否则如果你不能通过rbenv改变ruby​​版本,readhere 关于ruby-on-rails-服务器启动时如何修复"YourRubyversionis2.3.0

ruby - 在 ruby​​ 中更改 block 内的上下文/绑定(bind)

我有一个Ruby中的DSL,它的工作方式如下:desc'listalltodos'command:listdo|c|c.desc'showtodosinlongform'c.switch:lc.actiondo|global,option,args|#somecodethat'snotrelevanttothisquestionendenddesc'makeanewtodo'command:newdo|c|#etc.end一位开发人员建议我增强我的DSL以不需要将c传递给commandblock,因此不需要c.全部里面的方法;据推测,他暗示我可以使以下代码工作相同:desc'lista

ruby-on-rails - 无法在生产服务器上启动 Rails 4 控制台

有一个奇怪的问题,需要帮助。我正在尝试在生产服务器上启动Rails控制台,但它的行为就像RailsC命令不存在一样。FWIW,我已经做了4年的Rails开发人员,并且一直在大量其他服务器上毫无问题地执行此操作。在此服务器上,我可以毫无问题地删除、创建、迁移、播种数据库(使用RAILS_ENV=production),并且该应用程序可以正常运行,没有任何问题。设置:Ubuntu14.04(racksapce第二代性能1服务器)NginxwithPassenger(我通常使用Unicorn,但我用Passenger部署的任何应用程序都没有问题)Ruby2.1.5(使用rvm)rails4.